1. Field of the Invention
This invention relates to the field of streaming media content search and playback over a network. In particular, the invention relates to a computer system that enables a continuous streaming media playback from a distribution of sites available over a network such as the Internet.
2. Description of the Related Art
Computers currently can access streaming media on the Internet. Streaming media available on the Internet include, for example, music, video clips such as movie trailers, home movies, and animation.
Users locate streaming media on the Internet by manually selecting links. Typically, users browse the media sites that contain numerous sub-links. Users sometimes select through a chain of links to locate a desired media on a media link. Once located, the desired media link may or may not contain the desired media.
Some services provide media search engine capabilities. Users may enter a search request for selected media creations by an artist. The media search engine then displays links to categories and/or sub-links of media that are determined to match one or more criteria in the search request set forth by the user. The determination of which links should be displayed in response to the search request is dependent on the algorithm used in by the search engine. Typically, links displayed to users of current search engines are not subject to a determination of the quality or availability of the media associated with the media links. Further, the search results are outputted to the user as a display of links for the user""s selection.
Many Internet streaming media outlets provide a limited number of source nodes. The sites can be unreliable when the number of users accessing the site become congested.
An embodiment of the invention includes a method for playing back media from network. The method comprises receiving a search criteria from a network enabled device. The method further includes accessing a database comprising a plurality of network addresses, where the database associating each address with one or more classes of information. Each address accesses a media network resource. The method further includes selecting at least one address in the database using the search criteria, signaling the selected address to the network enabled device, and controlling the network enabled device so as to automatically access and play back the media resource of the selected address.
Another embodiment includes a method for playing back media from a network. The method includes receiving a request for media playback from a network enabled device. Further, accessing a database comprising a plurality of network addresses, where each address accessing a media network resource. The method also includes identifying at least two addresses from the database, signaling each identified address to the network enabled device, and controlling the network enabled device to access and automatically play back the media network resources of each of the signaled addresses.
In another embodiment, a computer system is provided for playing back media from a network. The computer system comprises a network enabled device comprising a media playback component. A database is included that comprises a plurality of addresses, where each address locates a media network resource on the network. The database includes one or more classes of information associated with each address in the plurality of addresses. The system also includes a network server module that is coupleable to the network enabled device and to the database. The network server module is able to receive a search request from the terminal that specifies one or more criterias. The network server module selects an address from the database that is associated with a class of information that matches the search criteria. The network server module signals the address to the network enabled device to cause the device to access the media network resource, and to signal media playback component to load the media network resource after the device accesses the media network resource.
In another embodiment, a computer system is provided for playing back media from a network. The computer system includes a network enabled platform comprising a media playback component. A database includes a plurality of addresses, where each address locates a media network resource on the network. Each address accesses a media network resource. The embodiment further includes a network server module coupleable to the network enabled device and to the database. The network server receives a request for media playback from the network enabled device, selects multiple addresses from the database, and signal the multiple addresses to the network enabled device. The network server module control a media playback component on the network enabled device to use the addresses to automatically access and play back the media network resource associated with the addresses.
In another embodiment, a network enabled device is configured to playback media from a network. The network enabled device is coupleable over the network to a database that includes a plurality of addresses. Each address locates a media network resource on the network. The network enabled device includes a user-interface to prompt for a search request. The network interface signals the request to a network server module that is communicatable with the database, and receives one or more addresses in the database that match the search request. The network enabled device includes a media playback component that is configured to be programmatically controlled by the network server module to automatically load the media network resources located by the addresses that match the search request.
In another embodiment, a network enabled device is configured to playback media from a network. The network enabled device is coupleable over the network to a database comprising a plurality of addresses. Each address locates a media network resource on the network. The network enabled device comprises a user-interface including a plurality of user-interactive features, including a first user-interactive feature that prompts to receive a search request for media playback. A network interface signals the request to a network server module upon the first user-interactive feature receiving the search request for media playback. The network interface is communicatable with the database to receive one or more addresses in the database that match the search request. A network playback component is configured to be programmatically controllable by the network server module to automatically load the media network resource associated with each address signaled to the network enabled device upon accessing the media network resource. A playback of the media playback component being controllable by one or more control user-interactive features.
An embodiment includes a system that provides media from a network to a terminal having a media playback component. The system includes a first network site and a second network site, where each network site locates one or more media network resources. Each media network resource is locatable on the network by a corresponding address that accesses the media network resource. A network server module is coupleable to the terminal through the network. The network server module identifies a first media network resource from the first network site and a second media network resource from the second network site. The network server module signals the corresponding address of the first media network resource to the terminal with control signals to cause the playback component to automatically load the first media network resource. The network server module automatically signals the corresponding address of the second media network resource to the terminal with control signals to cause the playback component to automatically load the second media network resource.
Another embodiment provides a media playback system for the Internet. The system includes an end terminal having a media playback component. A web server module is coupleable to the end terminal through the Internet. The web server module has access to one or more media web resources on a first web site, and to one or more media web resources on a second web site. The web server module signals a first link to a first media web resource on the first web site, and a second link to a second media web resource on the second web site. The web server module provides control signals to the end terminal to cause the end terminal to access and load the first media web resource and the second media web resource into the media playback component.
One or more of the embodiments may include a database that stores links to each of the plurality of media web resources, the web server module identifying the first link and the second link from the database.
Another embodiment includes a media playback system for the Internet. The system includes a terminal having a media playback component and a user-interface. A web server module is coupleable to the user terminal through the Internet. The web server module has access to a plurality of links, where each link locates a media web resource. The plurality of links are accessible on a plurality of web sites. The web server module signals the plurality of links to the user terminal in a designated order to cause the terminal to load the media web resource located by each of the plurality of links into the media playback component. The embodiment also includes a database that stores the plurality of links. The database is accessible to signal the plurality of links to the web server module in the designated order. The user-interface signals one or more inputs from a user to the web server module. The one or more inputs direct the web server to alter the designated order in which the database signals the plurality of links to the web server module.
Another embodiment includes a system that provides media play-back on a network. The system includes a terminal that is coupleable to the network. A play-list module is coupleable to the terminal. The play-list module stores a first play-list signaled from the terminal. The first play-list includes a plurality of network addresses. A first network address locates a first media network resource on a first network site, and a second network address locates a second media network resource on a second network site. A network server module is coupleable to the terminal and to the play-list module. The network server module signals the first play-list to the terminal. The network server module controls the terminal to cause the terminal to access the media network resource associated with each network address in the first play-list, and to automatically load each respective media network resources into the media playback component.
Another embodiment includes a method for providing media to a terminal coupled to a network, where the terminal includes a media playback component. A terminal is programmatically directed to access a first network site in the plurality of network sites. The media playback component on the terminal is caused to automatically load a first media web resource located at the first network site to playback a first media. The terminal is programmatically directed to access a second network site in the plurality of network sites. The media playback component on the terminal is caused to automatically load a second media web resource located at the second network site to playback a second media.
Another embodiment includes a method to provide media to a terminal coupled to the Internet. A database is accessed that stores a plurality of links, where each link opening a corresponding media web resource. A first link is selected from the database, the first link being located on a first network site. Next, a second link is selected from the database, the second link being located in a second network site. The second network site is external to the first network site. Then, the selected links are signaled to a media playback component on the terminal to sequentially access the media web resources associated with the selected links. The media playback component on the terminal is automatically signaled to load each of the media web resource accessed from the selected links so as to playback a media corresponding to each media web resource.
Another embodiment includes a system to share media playback from a network between a plurality of terminals. The plurality of terminals include a first terminal and a second terminal. The system includes a play-list component locatable on the network by a selectable link. The play-list component identifies a plurality of links to form a play-list, where each link in the play-list locating a media file on the network. The system includes a network server module that signals the plurality of links that form the play-list to the first terminal. The network server module receives a signal to transmit the selectable link to a second terminal to enable the second terminal to locate the play-list module.
In another embodiment, a method is provided to locate web resources on the Internet. A web site is accessed to identify a plurality of links using a web browser component. The web site can be automatically or programmatically accessed. Each of the plurality of links are selectable to open a corresponding web resource of a specified data type on the web site. The plurality of links are made available to a plurality of Internet enabled devices that select one or more of the links.
Another embodiment includes a system to locating web resources on the Internet. The system includes a web browser component, and a database. A search module controls the web browser component to access at least one web site. The search module controls the web browser component to identify a plurality of links to media web resources at the web site. Each of the plurality of links are selectable to open a media web resource. The search module stores the plurality of links in the database.
Another embodiment includes a method to locate web resources on the Internet. A database that stores a plurality of links is accessed, the plurality of links being selectable to open a corresponding web media resources. Metadata information is programmatically identified about the web media resource corresponding to each of the plurality of links. The plurality of links are made accessible to a plurality of Internet enabled devices. The plurality of Internet enabled devices elect one or more of the links to open the corresponding media web resource.
Another embodiment includes a method to locate web resources on the Internet. A database is accessed that includes a plurality of links to media web resources. Each of the plurality of links are programmatically verified to open a corresponding web media resource. Each verified link is accessible to a plurality of Internet enabled devices that select one or more of the links to open the corresponding media web resource.
Another embodiment includes a system to locate web resources on the Internet. The system includes a first indexed data structure comprising a plurality of links. A media playback component is coupleable to the database. The media playback component loads each of the plurality of links to verify whether the link is selectable to open a media web resource. A second indexed data structure stores each verified link in the plurality of links. The second indexed data structure is available to the plurality of Internet enabled devices.
Another embodiment includes a method to providing links for use in a media search engine. A plurality of internal links on a network site are identified. The network site makes a network resource of a specific data type accessible for a network enabled device. The internal links that are selectable to open the network resource of the specific data type are extracted. The external link is stored in a database. One or more of the links are automatically signaled to a media playback component in response to receiving a search requests from the network enabled device.
Another embodiment includes a method to provide links for use in a media search engine. The method includes a) receiving from a first indexed data structure a first external link to a first network site; b) initializing a second data structure to be empty; c) determining if the first network site contains at least one internal link; d) storing the at least one internal link contained on the first network site that is not in the first indexed data structure and not in the second indexed data structure as another external link in the first indexed data structure; e) identifying the internal links contained on the first network site that are selectable to open a network resource of a specific data type or types; f) moving the first external link from the first indexed data structure to the second indexed data structure; and g) repeating steps a) through f) until the first indexed data structure is empty.
Another embodiment includes a computer system to search for links to streaming media playback on a network, the network being accessible to a network enabled device. The system includes a metacrawler to locate one or more media sites in directories containing streaming media. A media search module coupled to be signaled the one or more directories from the metacrawler. The media search module identifies a plurality of media links for the media sites. Each of the plurality of media links are selectable to open streaming media network resource. A metadata extraction module accesses each media link identified by the media search engine to extract metadata about the identified media link. A database comprising the plurality of media links identified by the media search engine, and the metadata is extracted about each identified media link. The database enables the network enabled device to access the plurality of media links.
An embodiment includes a rating system for rating media network resources on a network that is coupleable to a plurality of terminals. The rating system includes a database having a plurality of addresses. Each address locates a corresponding media network resource on the network. A network server module is coupleable to the plurality of terminals. The network server module accesses the database to signal one or more addresses from the database to the plurality of terminals. A rating module is coupleable to the plurality of terminals. The rating module receives a rating input from each of the plurality of terminals. The rating module associates the rating input with a selected address in the database.
In another embodiment, a rating system is provided to rate media network resources on a network. The rating system includes a database comprising a plurality of addresses that each locate a corresponding media network resource on the network. The database includes one or more classes of information associated with each of the plurality of addresses. A network server module is coupleable to the plurality of terminals. The network server module communicates with each of the plurality of terminals to receive a search request. The network server module signals the database to retrieve one or more addresses from the database in response to the search request. The retrieved addresses are associated with a class of information matching the search request. A rating module is coupleable to the plurality of terminals. The rating module receives a rating input from each of the plurality of terminals. The rating module associates the rating input with a selected address in the database.
Another embodiment includes a rating system for rating media network resources available over a network. The media network resources are located on the network by a plurality of terminals. The rating system includes a database that stores a plurality of addresses. Each address locates a corresponding media network resource on the network. The database includes a rating associated with each of the plurality of addresses. A network server module is coupleable to each of the plurality of terminals. The network server module accesses the database to signal one or more addresses from the database to the plurality of terminals. A rating module is coupleable to each of the plurality of terminals. The rating module receives a rating input from one of the terminals for each of the plurality of addresses in the database. In response to receiving the rating input from one of the plurality of terminals for a selected address in the database, the rating module accesses the database and reconfigures the rating associated with the selected address. A play-list module accesses the addresses to select one or more combinations of addresses. The play-list module signals the play-list to the network server module as addresses to be signaled to one or more of the plurality of terminals.
In a variation, the address may be selected by the play-list module based on a criteria stored with the address in the database. Examples of criterias include rankings, reflecting preferences of users on terminals after playing back media located by the respective addresses. Other criterias that can be used to select addresses include metadata information, such as artist name and media title. For example, the search request may specify a ranking as one of the criterias. The play-list module then sorts the database for the ranking in selecting the addresses.
Another embodiment includes a method for ranking media sources on a network. The method includes accessing a database that stores a plurality of addresses. Each address locates a media resource on the network and each address is associated with a rating. A selected address from the database is signaled to a terminal coupled to the network. A rating input is received from the terminal after signaling the selected address to the terminal. The rating is associated for the selected address is adjusted in response to receiving the rating input.
Another embodiment includes a method for ranking media sources on a network. A database is accessed that stores a plurality of addresses. Each address locates a media resource on the network and each address is associated with a rating. A combination of addresses are selected to form a play-list. The play-list is signaled to a terminal coupled to the network. A ranking is received from the terminal after signaling the addresses in the play-list to the terminal. The rating is adjusted for each address signaled to the terminal from the play-list in response to receiving the ranking.
Another embodiment includes a method that ranks media sources on a network. A database that stores a plurality of addresses is accessed. Each address locates a media resource on the network, and each address is associated with a rating. A selected address is signaled from the database to a terminal coupled to the network. A ranking is received from the terminal after the selected address is signaled to the terminal. The rating associated for the selected address is adjusted in response to receiving the ranking.
Another embodiment includes a network enabled device that comprises a media playback component. The media playback component is configured to communicate with a network-side module to receive a first plurality of links. Each of the first plurality of links locate a media file on a network. A web browser component is configured to receive a second plurality of links. Each of the second plurality of links hosts a media file located by one of the first plurality of links. The web browser component displays the web site for each of the second plurality of links when the media playback component plays back media from the media file being hosted by web site being displayed.